package com.cherish.pattern.singleton.hungry;

/**
 * @Classname HungrySinglten
 * @Date 2019/3/11 22:59
 * @Author admin
 * @Description 饿汉单例模式  类加载时立即初始化 生成单例对象
 * <p>
 * 利用了Java类的加载机制
 * 先静态 后动态
 * 先属性 后方法
 * 先上后下
 * <p>
 * 优点：
 * 没有加载任何锁  所以执行效率高
 * 绝对线程安全 线程还没出现就已经实例化
 * <p>
 * 缺点：
 * 浪费内存 有可能生成单例对象之后并没有使用
 */
public class HungrySinglten {

    //单例模式第一步：构造方法私有化
    private HungrySinglten() {
    }

    private static final HungrySinglten hunggry = new HungrySinglten();

    public static HungrySinglten getInstance() {
        return hunggry;
    }
}
